#include<bits/stdc++.h>
using namespace std;

int n, m, xxx, yyy;
int dx[] = {2, 1, -1, -2, -2, -1, 1, 2};
int dy[] = {1, 2, 2, 1, -1, -2, -2, -1};
int cnt;

//bool check(int x, int y)
//{
//	if(x == xxx && y == yyy)
//		return false;
//	for(int i = 0;i < 8;i++)
//	{
//		if(x == xxx+dx[i] && y == yyy+dy[i])
//			return false;
//	}
//	return true;
//}

int dx0[] = {1, 0};
int dy0[] = {0, 1};
bool vis[30][30];
bool no[50][50];

void dfs(int x, int y)
{
	if(x == n && y == m)
	{
		cnt++;
		return ;
	}
	for(int i = 0;i < 2;i++)
	{
		int xx = x+dx0[i];
		int yy = y+dy0[i];
		if(!vis[xx][yy] && xx >= 0 && xx <= n && yy >= 0 && yy <= m && !no[xx][yy])
		{
			vis[xx][yy] = 1;
			dfs(xx, yy);
			vis[xx][yy] = 0;
		}
	}
}

int main()
{
	ios::sync_with_stdio(false);
	cin>>n>>m>>xxx>>yyy;
	for(int i = 0;i < 8;i++)
		no[xxx+dx[i]][yyy+dy[i]] = 1;
	no[xxx][yyy] = 1;
	dfs(0, 0);
	cout<<cnt;	
    return 0;
}

